package com.seventeen.monster.redisson.autoconfigure;

import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * 功能说明：
 *
 * @author liuyang44728
 * @date 2025年02月05日 09:59
 */
@ConfigurationProperties(prefix = "monster.redisson")
public class RedissonProperties {

    private Single single;
    private Sentinel sentinel;
    private Cluster cluster;

    public Single getSingle() {
        return single;
    }

    public void setSingle(Single single) {
        this.single = single;
    }

    public Sentinel getSentinel() {
        return sentinel;
    }

    public void setSentinel(Sentinel sentinel) {
        this.sentinel = sentinel;
    }

    public Cluster getCluster() {
        return cluster;
    }

    public void setCluster(Cluster cluster) {
        this.cluster = cluster;
    }

    public static class Single {
        private String password;
        private String address;

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public String getAddress() {
            return address;
        }

        public void setAddress(String address) {
            this.address = address;
        }
    }


    public static class Sentinel {
        private String password;
        private String sentinelAddress;
        private String masterName;

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public String getSentinelAddress() {
            return sentinelAddress;
        }

        public void setSentinelAddress(String sentinelAddress) {
            this.sentinelAddress = sentinelAddress;
        }

        public String getMasterName() {
            return masterName;
        }

        public void setMasterName(String masterName) {
            this.masterName = masterName;
        }
    }

    public static class Cluster {
        private String password;
        private String nodeAddress;

        public String getPassword() {
            return password;
        }

        public void setPassword(String password) {
            this.password = password;
        }

        public String getNodeAddress() {
            return nodeAddress;
        }

        public void setNodeAddress(String nodeAddress) {
            this.nodeAddress = nodeAddress;
        }
    }
}
